基礎語法過後就是流程控制了
流程控制結束就可以進入快樂的開發階段摟~
流程控制是程式設計中 非常重要的概念
甚至可以說 所有功能 幾乎都是靠流程控制 拼湊出來的
流程控制三大招 - 循序 選擇 重複
// 循序- 執行步驟是一步一步承續下來
print("第一步")
print("第二步")
print("第二步")
// 選擇 if
let a = 10
let b = 15
if a > b {
print("if a 大 ")
} else {
print("if b 大 ")
}
// 選擇 switch
switch a {
case 10:
print("switch a 是 10")
case 10...15:// 很多語言的switch是無法做到區間判斷的喔
print("switch a 是 10 到 15之間的一個數")
default:
print("switch a 是 啥?")
}
// 重複
let list = ["10", "11", "12", "13","14", "15"]
for (val) in list {
print("list value is \(val) ")
}
for (val) in 5...10 {
print("value is \(val) ")
}
let myList = ["user1": 10, "user2": 20, "user3": 30]
for (ind, val) in myList{
print("index is \(ind) value is \(val) ")
}
-------- 控制台輸出 ------------
第一步
第二步
第二步
if b 大
switch a 是 10
list value is 10
list value is 11
list value is 12
list value is 13
list value is 14
list value is 15
value is 5
value is 6
value is 7
value is 8
value is 9
value is 10
index is user3 value is 30
index is user1 value is 10
index is user2 value is 20
Swift 有個比較少見的 Range 類
是在其他語言比較少看到的
5...10 表 5~10 其實蠻直覺又好用的
期待之後實務上的應用
另外 switch case 的區間判斷也蠻特別的
該使用if or switch ???
讓我們後面再找範例說明
fun main() {
// 循序- 執行步驟是一步一步承續下來
println("第一步")
println("第二步")
println("第二步")
// 選擇 if
val a = 10
val b = 15
if (a > b) {
println("if a 大 ")
} else {
println("if b 大 ")
}
// 選擇 when
when (a) {
10 -> println("when a 是 10")
in 10..15 -> println("when a 是 10 到 15之間的一個數") // kotlin range 是.. 而swift用...
else -> println("when a 是 啥?")
}
// 重複
val list = mutableListOf("10", "11", "12", "13","14", "15")
for (value in list) {
println("只取 value is $value ")
}
for ((ind, value) in list.withIndex()) {
println("index is $ind list value is $value ")
}
for ((_, value) in (5..10).withIndex()) {
println("value is $value ")
}
val myList = mutableMapOf("user1" to 10, "user2" to 20, "user3" to 30)
for ((ind, value) in myList){
println("map index is $ind value is $value ")
}
}
-------- 控制台輸出 ------------
第一步
第二步
第二步
if b 大
when a 是 10
只取 value is 10
只取 value is 11
只取 value is 12
只取 value is 13
只取 value is 14
只取 value is 15
index is 0 list value is 10
index is 1 list value is 11
index is 2 list value is 12
index is 3 list value is 13
index is 4 list value is 14
index is 5 list value is 15
value is 5
value is 6
value is 7
value is 8
value is 9
value is 10
map index is user1 value is 10
map index is user2 value is 20
map index is user3 value is 30
kotlin在for跑list上需特別注意幾個關鍵字
list.indices 會只取出 index
list.withIndex() 同時取出 index 及 value
而map跑for時 本身就會帶出index與value
swift 有 switch
kotlin 有 when
其他語法上幾乎都相同
明天會是基礎的最後一章 類別與方法
到目前感受上 swift 與 kotlin 在基礎語言上
寫法差異並不大
然我們繼續往下看看吧~。
每次要學習一個新語言或框架
就會聽到各種"過來人"說
學XXX才是正統 不然你根本不知道自己在幹嘛
o(〒﹏〒)o
常常就很想說...
O-(/// ̄皿 ̄)☞ ─═≡☆゜★█▇▆▅▄▃▂_ 去去我氣走
真想好好從頭學習呀~
我看我從 基本電學 系統架構 計算機概論 ....
好好學個一輪好了
不不不~~~~嚇死寶寶
是不是該重回大學唸書了....
算了~像我這種半路出家非本科系走偏路的小嫩B
只能靠 "實用路線" 行走江湖 騙吃騙喝 ( ͡ ͡° ͜ ʖ ͡ ͡°)
那些基本功我們在有閒暇時間再努力補補吧......
前陣子很用力嗑了
Clean Code , Clean Coder, Working Effectively with Legacy Code
搞得我頭昏腦脹七葷八素
越念這些書越佩服讀資訊科系的人
學生時期應該大部分沒經歷過真正的團隊開發
要全憑文字與書本來學習那些 "錐心刺骨"的經驗
看得懂!? 認真可以理解!? 這些書在學生時期嗑的下去!!??!??
請收下我的膝蓋 m(__)m